package IC.lir.Instrunction;

public class MoveInstruction extends Instruction {
	
	private Data _what, _where;
	

	//lots of constructors to prevent memory->memory immediate->immediate etc. 
	public MoveInstruction (Register where, Data what) { Initialize(where, what); }
	public MoveInstruction (Memory where, Storable what) { Initialize(where, what); }
	
	private void Initialize(Data where, Data what)
	{
		_where = where;
		_what = what;
	}
	
	public String toString() { return String.format("Move %s, %s", _what.toString(), _where.toString()); }
}
